Remotely configured media device

ABSTRACT

Improved techniques for controlling operation of a portable electronic device are disclosed. Portable electronic devices which interact with a host electronic device can have their operational settings (e.g., configurations or preferences) remotely controlled. As a result, a host electronic device can offer a more sophisticated user interface and portable electronic devices need less local user interface features because these operational settings can be remotely controlled. The remotely-controlled (i.e., host controlled) operational settings are transferred to the portable electronic devices, whereby the portable electronic devices can thereafter operate in accordance with such settings.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of co-pending U.S. patent applicationSer. No. 13/296,089, filed on Nov. 14, 2011, and entitled “REMOTELYCONFIGURED MEDIA DEVICE,” which is a continuation of U.S. patentapplication Ser. No. 13/047,082, filed on Mar. 14, 2011, which issued onMar. 14, 2011 as U.S. Pat. No. 8,078,685, and entitled “REMOTELYCONFIGURED MEDIA DEVICE,” which is a continuation of U.S. patentapplication Ser. No. 11/583,327, filed on Oct. 18, 2006, which issued onApr. 19, 2011 as U.S. Pat. No. 7,930,369, and entitled “REMOTELYCONFIGURED MEDIA DEVICE,” which claims priority benefit of U.S.Provisional Application No. 60/728,671, filed Oct. 19, 2005, andentitled “REMOTELY CONFIGURED MEDIA DEVICE,” all of which are herebyincorporated herein by reference in their entirety.

BACKGROUND OF THE INVENTION

Field of the Invention

The present invention relates to media devices and, more particularly,to configuration of media devices.

Description of the Related Art

Today, portable media devices, such as Personal Digital Assistants(PDAs) or hand-held media players, are battery powered and includevarious user interface components, such as displays andswitches/buttons. Conventionally, portable media devices use buttons,dials or touchpads together with graphical user interfaces to controlthe devices, including setting of user preferences for use by thedevices. These portable media devices continue to get smaller and moreportable. At the same time, the functionality supported by portablemedia devices is increasing. Consequently, as portable media devices getsmaller while supporting robust functionality, there are increasingdifficulties in providing adequate user interfaces for the portablemedia devices.

Accordingly, there is a need for improved user interface capabilitiesfor portable media players.

SUMMARY OF THE INVENTION

The invention relates to improved techniques for controlling operationof a portable electronic device. According to the invention, portableelectronic devices which interact with a host electronic device can havetheir operational settings (e.g., configurations or preferences)remotely controlled. As a result, a host electronic device can offer amore sophisticated user interface and portable electronic devices needless local user interface features because these operational settingscan be remotely controlled. The remotely-controlled (i.e., hostcontrolled) operational settings are transferred to the portableelectronic devices, whereby the portable electronic devices canthereafter operate in accordance with such settings.

The invention can be implemented in numerous ways, including as amethod, system, device, apparatus, or computer readable medium. Severalembodiments of the invention are discussed below.

As a method for remotely providing operational settings from a hostelectronic device to a client electronic device, the host electronicdevice having a display, one embodiment of the invention includes atleast the acts of: presenting a user interface on the display of thehost electronic device, the user interface permitting a user of the hostelectronic device to select operational settings for use with the clientelectronic device; receiving a user selection of at least oneoperational setting for the client electronic device, the user selectionbeing from the user while interacting with the user interface on thehost electronic device; and transferring the at least one operationalsetting from the host electronic device to the client electronic device,whereby the client electronic device stores the at least one operationalsetting and thereafter operates in accordance with the stored at leastone operational setting.

As a method for operating a portable media player in accordance withoperational settings, one embodiment of the invention includes at leastthe acts of: receiving operational settings data from a host computerover a data link between the portable media player and the hostcomputer; storing the operational settings data at the portable mediaplayer; and operating a media management application on the portablemedia player in accordance with the stored operational settings data.

As a computer readable medium including at least computer program codefor remotely providing operational settings from a host device to aclient device, one embodiment of the invention includes at least:computer program code for presenting a user interface on a display ofthe host device, the user interface permitting a user of the host deviceto select operational settings for use with the client device; computerprogram code for receiving a user selection of at least one operationalsetting for the client device, the user selection being from the userwhile interacting with the user interface on the host device; andcomputer program code for transferring the at least one operationalsetting from the host device to the client device, whereby the clientdevice stores the at least one operational setting and thereafteroperates in accordance with the stored at least one operational setting.

As a computer readable medium including at least computer program codefor operating a portable media player in accordance with operationalsettings, one embodiment of the invention includes at least: computerprogram code for receiving operational settings data from a hostcomputer over a data link between the portable media player and the hostcomputer; computer program code for storing the operational settingsdata at the portable media player; and computer program code foroperating a media management application on the portable media player inaccordance with the stored operational settings data.

As a portable media player for storing and presenting media assets, oneembodiment of the invention includes at least: an input/output interfacethat provides a data connection with a remote computing device; at leastone data storage device that stores the media assets and operationalsettings data, the media assets and the operational settings data beingprovided over the data connection from the remote computing device; anda media management application that presents one or more of the mediaassets in accordance with the operational settings data.

As a media system, one embodiment of the invention includes a hostcomputer for storing and presenting host media assets, and a clientmedia player for storing and presenting client media assets. The hostcomputer includes at least: a host input/output interface that providesconnection with the client media player; a host media managementapplication that (i) enables a user of the host computer to set userpreferences to be used on the client media player, and (ii) transfersone or more of the host media assets from the host computer to becomethe client media assets at the client media player; and at least onehost data storage device that stores the host media assets and the userpreferences for the client media player, the user preferences being setby a user of the host computer using the media management application.The client media player includes at least: a client input/outputinterface that provides connection with the host computer; at least oneclient data storage device that stores the client media assets and theuser preferences, the user preferences being provided over theconnection from the host computer; and a client media managementapplication that presents one or more of the client media assets at theclient media player in accordance with the user preferences.

Other aspects and embodiments of the invention will become apparent fromthe following detailed description taken in conjunction with theaccompanying drawings which illustrate, by way of example, theprinciples of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be readily understood by the following detaileddescription in conjunction with the accompanying drawings, wherein likereference numerals designate like structural elements, and in which:

FIG. 1 is a block diagram of a settings management system according toone embodiment of the invention.

FIG. 2 is a flow diagram of a settings management process according toone embodiment of the invention.

FIG. 3 is a flow diagram of a settings modification process according toone embodiment of the invention.

FIG. 4A is an exemplary diagram of a settings modification screenaccording to one embodiment of the invention.

FIG. 4B is an exemplary diagram of another settings modification screenaccording to one embodiment of the invention.

FIG. 5 is a flow diagram of a settings utilization process according toone embodiment of the invention.

FIG. 6 is a block diagram of a media management system according to oneembodiment of the invention.

FIG. 7 is a block diagram of a media player according to one embodimentof the invention.

DETAILED DESCRIPTION OF THE INVENTION

The invention relates to improved techniques for controlling operationof a portable electronic device. According to the invention, portableelectronic devices which interact with a host electronic device can havetheir operational settings (e.g., configurations or preferences)remotely controlled. As a result, a host electronic device can offer amore sophisticated user interface and portable electronic devices needless local user interface features because these operational settingscan be remotely controlled. The remotely-controlled (i.e., hostcontrolled) operational settings are transferred to the portableelectronic devices, whereby the portable electronic devices canthereafter operate in accordance with such settings.

Embodiments of the invention are discussed below with reference to FIGS.1-7. However, those skilled in the art will readily appreciate that thedetailed description given herein with respect to these figures is forexplanatory purposes as the invention extends beyond these limitedembodiments.

FIG. 1 is a block diagram of a settings management system 100 accordingto one embodiment of the invention. The settings management system 100includes a host computer 102 and a client device 104. The host computer102 is able to communicate with the client device 104 over a data link106. The data link 106 can be provided over a wired network, a wirelessnetwork, or both.

The host computer 102 includes a host application 108. The hostapplication 108 can represent an application program that is operable onthe host computer 102. As an example, the host application 108 can be amedia management application. One particular example of a mediamanagement application is iTunes® media management application providedby Apple Inc. The host computer 102, among other things, also includes ahost data storage 110 and settings data 112. The host data storage 110stores the data for the host computer 102. The data stored in the hostdata storage 110 is typically utilized by the host application 108. Forexample, when the host application 108 is or includes a media managementapplication, the host data can pertain to media data, such as media datapertaining to media items. The settings data 112 can be managed by thehost application 108. The settings data 112 pertains to data thatcontrols or sets one or more operational settings on the client device104. The operational settings, for example, can include user preferencesor configurations. Operational settings can also be referred to asoptions. The settings data 112 is determined by the host application 108in accordance with user interaction with the user interface provided bythe host application 108.

The client device 104 is typically a highly portable electronic device.As an example, the client device 104 can be a hand-held computingdevice. More particularly, the client device 104 can be a hand-heldmedia player. The client device 104 includes a client application 114.The client application 114 operates on the client device 104. The clientapplication 114 can, for example, pertain to a media managementapplication that enables the client device 104 to operate as a mediaplayer. The client application 114 makes use of client data storage 116and settings data 118. The client data storage 116 stores data utilizedby the client application 114. For example, when the client application114 is a media management application, the client data being stored inthe client data storage 116 can pertain to media data. The clientapplication 114 also makes use of the settings data 118. In oneembodiment, the settings data 118 are utilized by the client application114 to control operational settings that are utilized by the clientapplication 114.

The specific nature of the operational settings being set and utilizedvaries widely with different client devices. In an exemplary embodiment,such as where the host application 108 and the client application 114are media management applications operating on a music player, thesettings data can pertains to settings such as: shuffle settings, repeatsettings, playback speed settings, equalization settings, sound checksettings, clicker settings, language settings, menu configurationsettings, etc.

Accordingly, a user of the host computer 102 is able to interact withthe host application 108 using a user interface to set certainoperational settings that will be applied to affect the operation of theclient application 114 on the client device 104. In the event that theclient device 104 has limited user interface capabilities, the abilityto control operational settings (from the client device 104) to beutilized by the client device 104 can be severely hindered. Hence,enabling a user to remotely control operational settings for the clientdevice 104 via a user interface made available at the host computer 102is advantageous for a variety of reasons. One advantage of this approachis that the host computer 102 can offer an improved user interface thatis often larger and more sophisticated than would otherwise be availableon the client device 104. Another advantage of this approach is that theneed for user interface features at the client device 104 is reduced,thereby allowing the client device 104 to be smaller, lighter andpotentially less expensive.

The host computer 102 and the client device 104 can also be referred toas a host electronic device and a client electronic device,respectively. The client device 104 is normally a portable media device.In one embodiment, the form factor of the portable media device ishand-held or smaller. The portable media device may, for example, besmall and lightweight enough to be carried in one hand, worn, or placedin a pocket.

To make client devices user-friendly, one approach is to limit thenumber of user controls. In one embodiment, a client device does notinclude a display screen. In such cases, the ability for a user of theclient device to control settings (e.g., user preferences or otherconfigurations) by way of making selections with respect to a displayscreen is not possible. With such client devices, the ability to enableusers to set user preferences or configurations can be substantiallylimited. Consequently, the invention advantageously enables userpreferences for a client device to be set at a host computer and thentransferred to the client device.

FIG. 2 is a flow diagram of a settings management process 200 accordingto one embodiment of the invention. The settings management process 200is, for example, performed by a host device, such as the host computer102 illustrated in FIG. 1. More specifically, as an example, the hostapplication 108 of the host computer 102 can perform the settingsmanagement process 200.

The settings management process 200 begins with a decision 202. Thedecision 202 determines whether a client device is connected to the hostdevice. When the decision 202 determines that a client device is notconnected to the host device, then the settings management process 200awaits such a connection. In other words, the settings managementprocess 200 can be deemed invoked once a client device is connected tothe host device.

Accordingly, when the decision 202 determines that a client device isconnected, the settings management process 200 continues. When thesettings management process 200 continues, client device information isobtained 204 from the client device. Here, through communicationsbetween the host device and the client device, the host computer is ableto obtain 204 the client device information that is provided by theclient device. The client device information can pertain to variousfeatures available at the client device, whether software features orhardware features. The client device information can also include a typeindication for the client device. The client device can also provide anidentifier for the client device.

Next, the settings management process 200 determines 206 supportedsettings at the client device. The supported settings at the clientdevice are those settings that the client device can recognize. Next,display screens at the host device are enabled 208. The display screensbeing enabled 208 are those display screens that correspond to thesupported settings. In other words, the display screens that are enabled208 are all part of a user interface provided at the host device andserves to enable a user of the host device to review or modify one ormore operational settings that are supported by the client device.

Thereafter, a decision 210 determines whether the client device has beendisconnected from the host device. When the decision 210 determines thatthe client device has not been disconnected but remains connected, thesettings management process 200 continues to enable display of thedisplay screens that correspond to the one or more operational settingsthat are supported by the client device. However, when the decision 210determines that the client device has been disconnected, then thepreviously enabled display screens are disabled 212. Here, once theclient device has been disconnected from the host device, the hostdevice typically does not allow the settings for the client device to bemodified. As a result, the display screens that would otherwise beutilized by a user of the host device to review and modify the supportedoperational settings are no longer accessible at the host device.Following the block 212, the settings management process 200 ends.However, in general, the settings management process 200 can be invokedwhenever a client device is connected to the host device.

Although the settings management system 100 depicts only a single clientdevice, it should be understood that the settings management system 100can support a plurality of different client devices. In doing so, thehost device 102 is able to individually manage the settings to beutilized by each of the different client devices. In one embodiment, foreach of the client devices, a separate settings management process 200can be invoked and utilized.

FIG. 3 is a flow diagram of a settings modification process 300according to one embodiment of the invention. The settings modificationprocess 300 is, for example, performed by a host device, such as thehost computer 102 illustrated in FIG. 1.

The settings modification process 300 begins with a decision 302. Thedecision 302 determines whether a selection of an enabled display screenhas been made. In other words, whether a user of the host device hasrequested to have the host device display a display screen that can beutilized to modify operational settings of a client device. In order forsuch a display screen to be presented, the display screen must becurrently enabled as discussed above with regard to FIG. 2. For example,the client device must be connected to the host device. In any case,when the decision 302 determines that there has been no selection of anenabled display screen, the settings modification process 300 awaitssuch a selection. In other words, the settings modification process 300is effectively invoked when a user has selected an enabled displayscreen to be presented on the host device.

Once the decision 302 determines that a selection of an enabled displayscreen has been made, the enabled display screen that has been selectedis displayed 304. Next, a decision 306 determines whether the user hasinteracted with the enabled display screen to change one or moresettings pertaining to operation of the client device. When the decision306 determines that one or more settings have been changed, updatedsettings data is stored 308 at the host device. The updated settingsdata includes at least the settings data that has been changed.Typically, the host device will store all of the settings data. Hence,when certain settings data has been changed, the certain settings datais stored so as to replace the previously stored settings datacorresponding thereto. Next, the updated settings data is provided 310to the client device. Typically, the updated settings data is provided310 to the client device over a data link, such as data link 106illustrated in FIG. 1. As previously noted, the data link can pertain toa wired network, a wireless network or both. Here, the updated settingsdata provided 310 to the client device pertains to at least the settingsthat have been changed. Alternatively, all of the settings data can beprovided 310 to the client device and thereby replace all of thesettings data at the client device. On the other hand, when the decision306 determines that the settings have not been changed, the settingsmodification process 300 bypasses the blocks 308 and 310.

After the updated settings data has been provided 310 to the clientdevice (or after blocks 308 and 310 are bypassed), a decision 312determines whether the settings modification process 300 is done. Whenthe user has completed making any changes to settings data, the settingsmodification process 300 can be manually or automatically determined tobe done. Regardless, when the decision 312 determines that the settingsmodification process 300 is not done, the settings modification process300 returns to repeat the decision 306 and subsequent operations.

Once the decision 312 determines that the settings modification process300 is done, then display of the enabled display screen is removed 314.Thereafter, the settings modification process 300 is complete and ends.

FIG. 4A is an exemplary diagram of a settings modification screen 400according to one embodiment of the invention. The settings modificationscreen 400 represents a display screen that can be utilized to modifyoperational settings of a client device (e.g., block 304 of FIG. 3). Inthis embodiment, the settings modification screen 400 pertains to adisplay screen provided by a media management application. The settingsmodification screen 400 includes tab selectors 402, 404, 406 and 408.The tab selector 402 pertains to equalization settings, the tab selector404 pertains to repeat settings, the tab selector 406 pertains toshuffle settings, and the tab selector 408 pertains to audio books. Asdepicted in FIG. 4A, the settings modification screen 400 pertains to anequalization settings screen, since the tab selector 402 has beenchosen. As such, the settings modification screen 400 depictsequalization settings 410. A user can thus interact with the settingsmodification screen 400 to make choices as to how a client device is tooperate with regards to equalization. In this embodiment, theequalization settings 410 available on the settings modification screen400 present a user with three choices for selection. The three choicescan be selected by selectors 412, 414 and 418. The selector 412 allows auser to select “Off” if no equalization operations are desired at theclient device. The selector 414 allows the user to select “Always Use”to utilize a predetermined equalization setting. A selector 416 allowsthe user to select one of a plurality of preset equalization settings tobe used as the predetermined equalization setting in the case where theselector 414 is selected. In the example illustrated in FIG. 4A, theselected predetermined equalization setting is known as “Bass Boost”.The selector 418 allows the user to select “Use Host Settings” toutilize host equalization settings. For example, with respect to FIG. 1,the host application 108 can allow a user of the host computer 102 toset equalization settings for media items available at the host computer102. The selection of the selector 418 indicates that the user desiresto utilize the same equalization settings automatically on the clientdevice 104. In such case, the equalization settings can be set in avariety of different ways at the host computer 102. For example, for anytype of genre, artist, album or media item (e.g., song, video, etc.),the equalization settings can be separately determined.

FIG. 4B is an exemplary diagram of another settings modification screen450 according to one embodiment of the invention. The settingsmodification screen 450 represents a display screen that can be utilizedto modify operational settings of a client device (e.g., block 304 ofFIG. 3). In this embodiment, the settings modification screen 450pertains to a display screen provided by a media management application.The settings modification screen 450 includes tab selectors 452, 454,456 and 458. The tab selector 452 pertains to equalization settings, thetab selector 454 pertains to repeat settings, the tab selector 456pertains to shuffle settings, and the tab selector 458 pertains to audiobooks. As depicted in FIG. 4B, the settings modification screen 450pertains to a shuffle settings 460, since the tab selector 456 has beenchosen. The shuffle settings 460 allows the user to indicate whether andwhat type of shuffle they desire to be utilized with the client device.In this example, the user is presented with three options for shufflesettings 460. The first settings option is “Off” and corresponds to aselector 462. When selected, the client device would not provide anyshuffle operation. The second settings option is “Songs” and correspondsto a selector 464. When selected, the client device would shuffle a playorder of songs on a song basis after playing through all (or a playlistof) the songs. The third settings option is “Albums” and corresponds toa selector 466. When selected, the client device would shuffle a playorder of songs on an album basis (e.g., after playing all the songswithin an album).

FIG. 5 is a flow diagram of a settings utilization process 500 accordingto one embodiment of the invention. The settings utilization process 500is, for example, performed by a client device, such as the client device104 illustrated in FIG. 1. More specifically, as an example, the clientapplication 114 of the client computer 104 can perform the settingsutilization process 500. In one example, the client application is amedia management application.

The settings utilization process 500 begins with a decision 502. Thedecision 502 determines whether operational settings data has beenreceived 502. As noted above with respect to the settings modificationprocess 300 illustrated in FIG. 3, operational settings data can be setat a host computer and transferred to a client device. For example, inFIG. 3, updated settings data can be provided 310 to the client device.In any case, when the decision 502 determines that operational settingsdata has not been received, then the settings utilization process 500awaits such data.

Once the decision 502 determines that operational settings data has beenreceived, the operational settings data is stored 504 at the clientdevice. As noted above in FIG. 1, the client device can include datastorage, such as the client data storage 116. Thereafter, the clientdevice can be operated 506 in the normal course in accordance with thestored operational settings data. In other words, the client device canmake use of operational settings data that has been set at a hostcomputer, yet utilized on the client computer. For example, although theoperational settings data is remotely determined and then provided tothe client device, the client device can make use of the operationalsettings data as if it had been provided locally. In one embodiment, allor substantially all of the available operational settings for theclient device can be set at the host computer. In another embodiment,some operational settings can be remotely set at the host computer,while other operational settings can be sent at the client device. Instill another embodiment, some or all of the operational settings can beset at either the host computer or the client device. Following theblock 506, the settings utilization process 500 is complete and ends.

FIG. 6 is a block diagram of a media management system 600 according toone embodiment of the invention. The media management system 600includes a host computer 602 and a media player 604. The host computer602 is, for example, an implementation of the host computer 102illustrated in FIG. 1. The media player 604 is, for example, animplementation of the client device 104 illustrated in FIG. 1. The hostcomputer 602, among other conventional components, includes a managementmodule 606 which is a software module. The management module 606provides for centralized management of media items (and/or playlists)not only on the host computer 602 but also on the media player 604. Moreparticularly, the management module 606 manages those media items storedin a media store 608 associated with the host computer 602. Themanagement module 606 also interacts with a media database 610 to storemedia information associated with the media items stored in the mediastore 608.

The media information pertains to characteristics or attributes of themedia items. For example, in the case of audio or audiovisual media, themedia information can include one or more of: title, album, track,artist, composer and genre. These types of media information arespecific to particular media items. In addition, the media informationcan pertain to quality characteristics of the media items. Examples ofquality characteristics of media items can include one or more of: bitrate, sample rate, equalizer setting, volume adjustment, start/stop andtotal time.

Still further, the host computer 602 includes a play module 612. Theplay module 612 is a software module that can be utilized to playcertain media items stored in the media store 608. The play module 612can also display (on a display screen) or otherwise utilize mediainformation from the media database 610. Typically, the mediainformation of interest corresponds to the media items to be played bythe play module 612.

The host computer 602 also includes a communication module 614 thatcouples to a corresponding communication module 616 within the mediaplayer 604. A connection or link 618 removably couples the communicationmodules 614 and 616. In one embodiment, the connection or link 618 is acable that provides a data bus, such as a FIREWIRE™ bus or USB bus,which is well known in the art. In another embodiment, the connection orlink 618 is a wireless channel or connection through a wireless network.Hence, depending on implementation, the communication modules 614 and616 may communicate in a wired or wireless manner.

The management module 606 can also operate to set operational settingsfor use on the media player 604. The settings management processing 200and the settings modification process 300 are examples of processingthat might be utilized in this regard. The operational settings (oroperational settings data) for use with the client device can be set andthen stored on the host computer 602. At the host computer 602, theoperational settings (or operational settings data) can, for example, bestored in the media store 608, the media database 610 or other storage.The management module 606 and/or the communication module 614 can alsooperate to transfer the operational settings (or operational settingsdata) to the media player 604.

The media player 604 also includes a media store 620 that stores mediaitems within the media player 604. Optionally, the media store 620 canalso store data, i.e., non-media item storage. The media items beingstored to the media store 620 are typically received over the connectionor link 618 from the host computer 602. More particularly, themanagement module 606 sends all or certain of those media items residingon the media store 608 over the connection or link 618 to the mediastore 620 within the media player 604. Additionally, the correspondingmedia information for the media items that is also delivered to themedia player 604 from the host computer 602 can be stored in a mediadatabase 622. In this regard, certain media information from the mediadatabase 610 within the host computer 602 can be sent to the mediadatabase 622 within the media player 604 over the connection or link618. Still further, playlists identifying certain of the media items canalso be sent by the management module 606 over the connection or link618 to the media store 620 or the media database 622 within the mediaplayer 604.

Furthermore, the media player 604 includes a play module 624 thatcouples to the media store 620 and the media database 622. The playmodule 624 is a software module that can be utilized to play certainmedia items stored in the media store 620. The play module 624 can alsodisplay (on a display screen) or otherwise utilize media informationfrom the media database 622. Typically, the media information ofinterest corresponds to the media items to be played by the play module624.

In one embodiment, the media player 604 has limited or no capability tomanage media items on the media player 604. However, the managementmodule 606 within the host computer 602 can indirectly manage the mediaitems residing on the media player 604. For example, to “add” a mediaitem to the media player 604, the management module 606 serves toidentify the media item to be added to the media player 604 from themedia store 608 and then causes the identified media item to bedelivered to the media player 604. As another example, to “delete” amedia item from the media player 604, the management module 606 servesto identify the media item to be deleted from the media store 608 andthen causes the identified media item to be deleted from the mediaplayer 604. As still another example, if changes (i.e., alterations) tocharacteristics of a media item were made at the host computer 602 usingthe management module 606, then such characteristics can also be carriedover to the corresponding media item on the media player 604. In oneimplementation, the additions, deletions and/or changes occur in abatch-like process during synchronization of the media items on themedia player 604 with the media items on the host computer 602.

In another embodiment, the media player 604 has limited or no capabilityto manage playlists on the media player 604. However, the managementmodule 606 within the host computer 602 through management of theplaylists residing on the host computer can indirectly manage theplaylists residing on the media player 604. In this regard, additions,deletions or changes to playlists can be performed on the host computer602 and then be carried over to the media player 604 when deliveredthereto.

At the media player 604, the operational settings (or operationalsettings data) can be received by the communication module 616 and thenstored in the media store 620, the media database 622 or other storage.Thereafter, the media player 604, e.g., the play module 624, can utilizethe operational settings (or operational settings data) when operating.Optionally, the media player 604 can also enable a user to directly setone or more operational settings. Hence, some operational settings canbe set at the host computer 602 and provided to the media player 604,while other operational settings can be set locally at the media player604. In one embodiment, the media player 604 enables a user to overrideor alter the operational settings provided by the host computer.

The ability to remotely set operational settings at the host computer602 and then provide them to the media player 604 can be restricted soas to prevent data exchange when the host computer and media player donot recognize one another.

According to one embodiment, when a media player is first connected to ahost computer (or even more generally when matching identifiers are notpresent), the user of the media player is queried as to whether the userdesires to affiliate, assign or lock the media player to the hostcomputer. When the user of the media player elects to affiliate, assignor lock the media player with the host computer, then a pseudo-randomidentifier is obtained and stored in either the media database or a filewithin both the host computer and the media player. In oneimplementation, the identifier is an identifier associated with (e.g.,known or generated by) the host computer or its management module andsuch identifier is sent to and stored in the media player. In anotherimplementation, the identifier is associated with (e.g., known orgenerated by) the media player and is sent to and stored in a file ormedia database of the host computer.

FIG. 7 is a block diagram of a media player 700 according to oneembodiment of the invention. The media player 700 includes a processor702 that pertains to a microprocessor or controller for controlling theoverall operation of the media player 700. The media player 700 storesmedia data pertaining to media items in a file system 704 and a cache706. The file system 704 is, typically, a storage disk or a plurality ofdisks. The file system 704 typically provides high capacity storagecapability for the media player 700. The file system 704 can store notonly media data but also non-media data (e.g., when operated in a diskmode). However, since the access time to the file system 704 isrelatively slow, the media player 700 can also include a cache 706. Thecache 706 is, for example, Random-Access Memory (RAM) provided bysemiconductor memory. The relative access time to the cache 706 issubstantially shorter than for the file system 704. However, the cache706 does not have the large storage capacity of the file system 704.Further, the file system 704, when active, consumes more power than doesthe cache 706. The power consumption is often a concern when the mediaplayer 700 is a portable media player that is powered by a battery (notshown). The media player 700 also includes a RAM 720 and a Read-OnlyMemory (ROM) 722. The ROM 722 can store programs, utilities or processesto be executed in a non-volatile manner. The RAM 720 provides volatiledata storage, such as for the cache 706.

The media player 700 also includes a user input device 708 that allows auser of the media player 700 to interact with the media player 700. Forexample, the user input device 708 can take a variety of forms, such asa button, keypad, dial, etc. Still further, the media player 700includes a display 710 (screen display) that can be controlled by theprocessor 702 to display information to the user. A data bus 711 canfacilitate data transfer between at least the file system 704, the cache706, the processor 702, and the CODEC 712.

In one embodiment, the media player 700 serves to store a plurality ofmedia items (e.g., songs) in the file system 704. When a user desires tohave the media player play a particular media item, a list of availablemedia items is displayed on the display 710. Then, using the user inputdevice 708, a user can select one of the available media items. Theprocessor 702, upon receiving a selection of a particular media item,supplies the media data (e.g., audio file) for the particular media itemto a coder/decoder (CODEC) 712. The CODEC 712 then produces analogoutput signals for a speaker 714. The speaker 714 can be a speakerinternal to the media player 700 or external to the media player 700.For example, headphones or earphones that connect to the media player700 would be considered an external speaker.

The media player 700 also includes a network/bus interface 716 thatcouples to a data link 718. The data link 718 allows the media player700 to couple to a host computer. The data link 718 can be provided overa wired connection or a wireless connection. In the case of a wirelessconnection, the network/bus interface 716 can include a wirelesstransceiver.

The media items (or media assets) can be audio items (e.g., audio filesor songs), videos (e.g., movies) or images (e.g., photos).

In one embodiment, the client device/media player is a portable mediadevice dedicated to processing media such as audio, video and/or images.For example, the media device can be a music player (e.g., MP3 player),a game player, a video player, a video recorder, a camera, an imageviewer and the like. These devices are generally battery operated andhighly portable so as to allow a user to listen to music, play games orvideo, record video, play video, take pictures or view pictures whereverthe user travels. In one implementation, the media device is a hand-helddevice that is sized for placement into a pocket or hand of the user. Bybeing hand-held, the media device is relatively small and easily handledand utilized by its user. By being pocket sized, the user does not haveto directly carry the media device and therefore the media device can betaken almost anywhere the user travels. Furthermore, the media devicemay be operated by the user's hands without the need for a referencesurface such as a desktop.

In general, the media player can correspond to one or more of: a musicplayer, game player, video player, camera, mobile telephone (e.g., cellphone), personal digital assistant (PDA), and/or the like.

U.S. application Ser. No. 11/535,646, (now U.S. Pat. No. 7,706,637)filed Sep. 27, 2006, and entitled “HOST CONFIGURED FOR INTEROPERATIONWITH COUPLED PORTABLE MEDIA PLAYER DEVICE,” is hereby incorporatedherein by reference. U.S. application Ser. No. 10/973,925, (now U.S.Pat. No. 7,680,849) filed Oct. 25, 2004, and entitled “MULTIPLE MEDIATYPE SYNCHRONIZATION BETWEEN HOST COMPUTER AND MEDIA DEVICE,” is herebyincorporated herein by reference.

The various aspects, embodiments, implementations or features of theinvention can be used separately or in any combination.

The invention is preferably implemented by software, but can also beimplemented in hardware or a combination of hardware and software. Theinvention can also be embodied as computer readable code on a computerreadable medium. The computer readable medium is any data storage devicethat can store data which can thereafter be read by a computer system.Examples of the computer readable medium include read-only memory,random-access memory, CD-ROMs, DVDs, magnetic tape, optical data storagedevices, and carrier waves. The computer readable medium can also bedistributed over network-coupled computer systems so that the computerreadable code is stored and executed in a distributed fashion.

The advantages of the invention are numerous. Different aspects,embodiments or implementations may yield one or more of the followingadvantages. One advantage of the invention is that operational settingsto be utilized by a client device (e.g., portable media device) can beremotely set at a host computer. This avoids or reduces the need for theclient device to support user interaction to set such operationalsettings. A host computer can also offer a user interface forcontrolling operational settings that is often larger and moresophisticated than would otherwise be available on a client device.

The many features and advantages of the present invention are apparentfrom the written description and, thus, it is intended by the appendedclaims to cover all such features and advantages of the invention.Further, since numerous modifications and changes will readily occur tothose skilled in the art, the invention should not be limited to theexact construction and operation as illustrated and described. Hence,all suitable modifications and equivalents may be resorted to as fallingwithin the scope of the invention.

The invention claimed is:
 1. A host device comprising: a communicationsinterface establishing a communicative coupling between the host deviceand a client device storing media including video and client deviceinformation; and at least one processor to: in response to adetermination that data exchange between the host device and the clientdevice is enabled, generate, at the host device, a user-interfaceconfigured to display and alter client settings, the client settingscorresponding to operational settings supported by the client device,wherein the client device includes a user-interface configured to alterfewer of the client settings with respect to the user-interface of thehost device, wherein the client settings are configurations orpreferences of the client device; present, on the user-interface of thehost device, an operational interface element for adjusting the clientsettings that are supported by the client device; receive, at theoperational interface element, a user selection of an option to copy atleast one host operational setting in use at the host device to theclient device, wherein the at least one host operational settingcorresponds to at least one of the client settings that is alterable viathe host device, but is not alterable via the user-interface of theclient device; and send the at least one host operational setting to theclient device via the communicative coupling, the at least one hostoperational setting causing the client device to run using the at leastone host operational setting on the client device.
 2. The host device ofclaim 1, wherein the communication interface is further configured toterminate the communicative coupling once the host device has determinedthat the client device is persistently running using the at least onehost operational setting.
 3. The host device of claim 1, wherein thecommunication interface is further configured to receive the clientdevice information from the client device, and wherein the at least oneprocessor is further configured to identify the operational settingsthat are supported by the client device based on the client deviceinformation.
 4. The host device of claim 3, wherein the client deviceinformation pertains to software features available at the clientdevice, hardware features available at the client device, a typeindication for the client device, or a combination thereof.
 5. The hostdevice of claim 1, wherein the at least one host operational includes atleast one of equalizer settings, shuffle settings, and menuconfiguration settings.
 6. The host device of claim 1, wherein theoption to copy the at least one host operational setting in use at thehost device to the client device corresponds to an option to copy atleast one equalization setting in use at the host device to the clientdevice.
 7. The host device of claim 1, wherein the at least oneprocessor is further configured to: generate and store a host identifierat the host device; and transmit the host identifier for storage at theclient device.
 8. The host device of claim 7, wherein the hostidentifier is generated in response to receiving a request, from theclient device, to lock the client device to the host device.
 9. Anon-transitory computer-readable storage medium storing instructionsthat, when executed by one or more computer processors of a host device,cause the host device to: in response to a determination that dataexchange between the host device and a client device is enabled,generate, at the host device, a user-interface configured to display andalter client settings, the client settings corresponding to operationalsettings supported by the client device, wherein the client deviceincludes a user-interface configured to alter fewer of the clientsettings with respect to the user-interface of the host device, whereinthe client settings are configurations or preferences of the clientdevice, the client device storing media including video and clientdevice information; present, on the user-interface of the host device,an operational interface element for adjusting the client settings thatare supported by the client device; receive, at the operationalinterface element, a user selection of an option to copy at least onehost operational setting in use at the host device to the client device,wherein the at least one host operational setting corresponds to atleast one of the client settings that is alterable via the host device,but is not alterable via the user-interface of the client device;establish a communication link between the host device and the clientdevice by the host device; and send the at least one host operationalsetting on the client device over the communication link, the at leastone host operational setting causing the client device to run using theat least one host operational setting.
 10. The non-transitorycomputer-readable storage medium of claim 9, the instructions furthercausing the host device to: receive the client device information fromthe client device; and identify the operational settings that aresupported by the client device based on the client device information.11. The non-transitory computer-readable storage medium of claim 10,wherein the client device information pertains to software featuresavailable at the client device.
 12. The non-transitory computer-readablestorage medium of claim 10, wherein the client device informationpertains to hardware features available at the client device.
 13. Thenon-transitory computer-readable storage medium of claim 10, wherein theclient device information includes a type indication for the clientdevice.
 14. The non-transitory computer-readable storage medium of claim9, wherein the at least one host operational setting includes at leastone of equalizer settings, shuffle settings, and menu configurationsettings.
 15. A method for remotely providing operational settings froma host device to a client device comprising: in response to determiningthat data exchange between the host device and the client device isenabled, generating, at the host device, a host interface configured todisplay and alter client settings, the client settings corresponding tooperational settings supported by the client device, wherein the clientdevice includes a user-interface configured to alter fewer of the clientsettings with respect to the host interface of the host device, whereinthe client settings are configurations or preferences of the clientdevice, the client device storing media including video and clientdevice information; displaying, in a host interface, an operationalinterface element for adjusting the client settings supported by theclient device; receiving, at the host device, a selection of an optionto copy at least one host operational in use at the host device to theclient device, wherein the at least one host operational settingcorresponds to at least on of the client settings that is alterable viathe host device, but is not alterable via the user-interface on theclient device; establishing a communication link between the host deviceand the client device by the host device; and sending the at least onehost operational setting to the client device over the communicationlink, thereby causing the client device to run using the at least onehost operational setting.
 16. The method of claim 15, wherein thesupported operational settings include at least one of equalizersettings, shuffle settings, and menu configuration settings.
 17. Asystem for controlling a multimedia client device comprising: a clientdevice storing digital media including multimedia content and clientdevice information; and a host device in operable communication with theclient device, the host device including at least one processor to: inresponse to a determination that data exchange between the host deviceand the client device is enabled, generate and present user-interfaceelements for selecting client settings, the client settingscorresponding to operational settings that affect operations of theclient device, wherein the operational settings are not definable usinga user-interface of the client device and are configurations orpreferences of the client device; receive, at the user-interfaceelements, a selection of an option to copy at least one host operationalsetting in use at the host device to the client device, wherein the atleast one host operational setting corresponds to at least one of theclient settings that is alterable via the host device, but is notalterable via the user-interface of the client device; and transmit theat least one host operational setting to the client device, via acommunication coupling, thereby causing the client device to operate inaccordance with the at least one host operational setting.
 18. Thesystem of claim 17, wherein the multimedia content includes audio andvideo, wherein the client device information defines software orhardware features available at the client device and wherein theprocessor is further configured to: determine an operational settingsupported by the client device based on the software or hardwarefeatures defined in the client device information, the operationalsetting recognizable by the client device; and wherein theuser-interface elements are generated and presented based on theoperational setting supported by the client device.
 19. The system ofclaim 17, wherein the at least one host operational setting includes atleast one of equalizer settings, shuffle settings, and menuconfiguration settings.